/*
 * Copyright 2016 Andrey Tolpeev
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *        http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.github.vase4kin.teamcityapp.account.create.view;

import android.support.v7.widget.Toolbar;
import android.view.MenuItem;
import android.widget.Switch;
import android.widget.TextView;

import com.github.vase4kin.teamcityapp.R;

public class OnCreateMenuItemClickListenerImpl implements Toolbar.OnMenuItemClickListener {

    private OnValidateListener mOnValidateListener;
    private TextView mServerUrl;
    private TextView mUserName;
    private TextView mPassword;
    private Switch mGuestUserSwitch;

    public OnCreateMenuItemClickListenerImpl(OnValidateListener mOnValidateListener,
                                             TextView serverUrl,
                                             TextView userName,
                                             TextView password,
                                             Switch guestUserSwitch) {
        this.mOnValidateListener = mOnValidateListener;
        this.mServerUrl = serverUrl;
        this.mUserName = userName;
        this.mPassword = password;
        this.mGuestUserSwitch = guestUserSwitch;
    }

    @Override
    public boolean onMenuItemClick(MenuItem item) {
        if (item.getItemId() == R.id.action_create) {
            if (mGuestUserSwitch.isChecked()) {
                mOnValidateListener.validateGuestUserData(
                        mServerUrl.getText().toString().trim());
            } else {
                mOnValidateListener.validateUserData(
                        mServerUrl.getText().toString().trim(),
                        mUserName.getText().toString().trim(),
                        mPassword.getText().toString().trim());
            }
            return true;
        }
        return false;
    }
}
